#ifndef MATERIALCHECKER_H
#define MATERIALCHECKER_H

#include "ettadatastruct.h"

class MaterialChecker
{
public:
    /**
     * @brief checkMaterial 检查条码是否可用
     * @param qrcode 48位耗材条码
     * @param material 条码解析结果
     * @return 检查结果
     */
    static EttaError checkMaterial(const QString &qrcode, Material &material);

    /**
     * @brief encodeMaterial 生成耗材条码
     * @param qrcode 原始条码
     * @return 编码后的条码
     */
    static QString encodeMaterial(const QString &qrcode);

    /**
     * @brief getMaterialTypeList 获取耗材型号列表
     * @return 支持的耗材型号列表
     */
    static QStringList getMaterialTypeList();

private:
    MaterialChecker();
    Q_DISABLE_COPY(MaterialChecker)
};

#endif // MATERIALCHECKER_H
